home *** CD-ROM | disk | FTP | other *** search
/ Directorty Opus 5 - Magellan 2 / Opus 5 - Magellan 2.iso / Extras / attachmail / AttachMail.dopus5 next >
Text File  |  1997-02-01  |  3KB  |  96 lines

  1. /* AttachMail for Directory Opus 5.5 and YAM 1.3.4+
  2.    By Dominique Dutoit (dominique@arcadis.be)
  3.  
  4.    Roughly based on ADPro_BatchConvert.dopus5 by Leo 'Nudel' Davidson
  5. */
  6.  
  7. OPTIONS RESULTS
  8.  
  9. PARSE ARG dOpusPort sourceHandle encodeType
  10. dOpusPort = STRIP(dOpusPort,"B",'" ')
  11. sourceHandle = STRIP(sourceHandle,"B",'" ')
  12. encodeType = STRIP(encodeType,"B",'" ')
  13.  
  14. IF dOpusPort="" THEN DO
  15.         SAY "Not correctly called from Directory Opus 5!"
  16.         SAY "Load this ARexx script into an editor for more info."
  17.         EXIT
  18.    END
  19. If ~SHOW("P",dOpusPort) THEN DO
  20.         SAY dOpusPort "is not a valid port."
  21.         EXIT
  22.    END
  23. IF (encodeType ~="UU") | (encodeType ~="MIME") THEN encodeType="MIME"
  24.  
  25. ADDRESS VALUE dOpusPort
  26.  
  27. dopus version
  28. IF ( result='RESULT' | TRANSLATE(result,'.',' ') < 5.1218 ) THEN DO
  29.         dopus request '"This script requires DOpus v5.5 or greater." OK'
  30.         EXIT
  31.    END
  32.  
  33. IF ~SHOW('Ports','YAM') THEN DO
  34.     dopus request "'This script requires YAM running on your Amiga.'"
  35.     EXIT
  36. END
  37.  
  38. lister set sourceHandle busy 1
  39. lister query sourceHandle numselentries
  40. listerNumSelEnt = RESULT
  41. lister query sourceHandle path
  42. listerPath = STRIP(RESULT,"B",'"')
  43.  
  44. lister set sourceHandle newprogress abort bar info name title
  45. lister set sourceHandle newprogress title "Attaching files..."
  46. lister set sourceHandle newprogress info "Warming up"
  47. lister set sourceHandle newprogress bar listerNumSelEnt
  48.  
  49. barTotal = listerNumSelEnt
  50.  
  51. DO i = 1 TO listerNumSelEnt
  52.     lister query sourceHandle firstsel
  53.  
  54.     tempName = STRIP(RESULT,"B",'"')
  55.     tempPath = listerPath || tempName
  56.  
  57.     lister set sourceHandle newprogress name tempName
  58.     lister set sourceHandle newprogress bar listerNumSelEnt i
  59.  
  60.     lister query sourceHandle abort
  61.     IF RESULT=1 THEN CALL EndAbort
  62.  
  63.     lister set sourceHandle newprogress file barTotal i
  64.  
  65.     dopus getfiletype tempPath id
  66.     fileType = STRIP(RESULT,"B",'"')
  67.  
  68.     IF fileType ~="" THEN DO
  69.         SELECT
  70.            WHEN fileType = "JPEG" THEN tempMIME = "image/jpeg"
  71.            WHEN fileType = "GIF" THEN tempMIME = "image/gif"
  72.            WHEN fileType = "MPEG" THEN tempMIME = "video/mpeg"
  73.            WHEN fileType = "HTML" THEN tempMIME = "text/plain"
  74.            WHEN fileType = "8SVX" THEN tempMIME = "audio/basic"
  75.            OTHERWISE tempMIME = "application/octet-stream"
  76.         END
  77.  
  78.         lister set sourceHandle newprogress info "MIME type is " || tempMIME
  79.  
  80.         ADDRESS 'YAM' WriteAttach tempPath fileType encodeType tempMIME
  81.     END
  82.  
  83.     lister select sourceHandle '"'tempName'"' 0
  84.  
  85.     lister query sourceHandle abort
  86.     IF RESULT=1 THEN CALL EndAbort
  87. END
  88.  
  89. EndAbort:
  90.  
  91. lister set sourceHandle newprogress off
  92. lister refresh sourceHandle
  93. lister set sourceHandle busy 0
  94. EXIT
  95.  
  96.